package com.ql.pojo.yk;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class YaopinExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public YaopinExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andYcodeIsNull() {
            addCriterion("yCode is null");
            return (Criteria) this;
        }

        public Criteria andYcodeIsNotNull() {
            addCriterion("yCode is not null");
            return (Criteria) this;
        }

        public Criteria andYcodeEqualTo(Integer value) {
            addCriterion("yCode =", value, "ycode");
            return (Criteria) this;
        }

        public Criteria andYcodeNotEqualTo(Integer value) {
            addCriterion("yCode <>", value, "ycode");
            return (Criteria) this;
        }

        public Criteria andYcodeGreaterThan(Integer value) {
            addCriterion("yCode >", value, "ycode");
            return (Criteria) this;
        }

        public Criteria andYcodeGreaterThanOrEqualTo(Integer value) {
            addCriterion("yCode >=", value, "ycode");
            return (Criteria) this;
        }

        public Criteria andYcodeLessThan(Integer value) {
            addCriterion("yCode <", value, "ycode");
            return (Criteria) this;
        }

        public Criteria andYcodeLessThanOrEqualTo(Integer value) {
            addCriterion("yCode <=", value, "ycode");
            return (Criteria) this;
        }

        public Criteria andYcodeIn(List<Integer> values) {
            addCriterion("yCode in", values, "ycode");
            return (Criteria) this;
        }

        public Criteria andYcodeNotIn(List<Integer> values) {
            addCriterion("yCode not in", values, "ycode");
            return (Criteria) this;
        }

        public Criteria andYcodeBetween(Integer value1, Integer value2) {
            addCriterion("yCode between", value1, value2, "ycode");
            return (Criteria) this;
        }

        public Criteria andYcodeNotBetween(Integer value1, Integer value2) {
            addCriterion("yCode not between", value1, value2, "ycode");
            return (Criteria) this;
        }

        public Criteria andYnameIsNull() {
            addCriterion("yName is null");
            return (Criteria) this;
        }

        public Criteria andYnameIsNotNull() {
            addCriterion("yName is not null");
            return (Criteria) this;
        }

        public Criteria andYnameEqualTo(String value) {
            addCriterion("yName =", value, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameNotEqualTo(String value) {
            addCriterion("yName <>", value, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameGreaterThan(String value) {
            addCriterion("yName >", value, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameGreaterThanOrEqualTo(String value) {
            addCriterion("yName >=", value, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameLessThan(String value) {
            addCriterion("yName <", value, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameLessThanOrEqualTo(String value) {
            addCriterion("yName <=", value, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameLike(String value) {
            addCriterion("yName like", value, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameNotLike(String value) {
            addCriterion("yName not like", value, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameIn(List<String> values) {
            addCriterion("yName in", values, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameNotIn(List<String> values) {
            addCriterion("yName not in", values, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameBetween(String value1, String value2) {
            addCriterion("yName between", value1, value2, "yname");
            return (Criteria) this;
        }

        public Criteria andYnameNotBetween(String value1, String value2) {
            addCriterion("yName not between", value1, value2, "yname");
            return (Criteria) this;
        }

        public Criteria andJixingIsNull() {
            addCriterion("jiXing is null");
            return (Criteria) this;
        }

        public Criteria andJixingIsNotNull() {
            addCriterion("jiXing is not null");
            return (Criteria) this;
        }

        public Criteria andJixingEqualTo(String value) {
            addCriterion("jiXing =", value, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingNotEqualTo(String value) {
            addCriterion("jiXing <>", value, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingGreaterThan(String value) {
            addCriterion("jiXing >", value, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingGreaterThanOrEqualTo(String value) {
            addCriterion("jiXing >=", value, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingLessThan(String value) {
            addCriterion("jiXing <", value, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingLessThanOrEqualTo(String value) {
            addCriterion("jiXing <=", value, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingLike(String value) {
            addCriterion("jiXing like", value, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingNotLike(String value) {
            addCriterion("jiXing not like", value, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingIn(List<String> values) {
            addCriterion("jiXing in", values, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingNotIn(List<String> values) {
            addCriterion("jiXing not in", values, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingBetween(String value1, String value2) {
            addCriterion("jiXing between", value1, value2, "jixing");
            return (Criteria) this;
        }

        public Criteria andJixingNotBetween(String value1, String value2) {
            addCriterion("jiXing not between", value1, value2, "jixing");
            return (Criteria) this;
        }

        public Criteria andGuigeIsNull() {
            addCriterion("guiGe is null");
            return (Criteria) this;
        }

        public Criteria andGuigeIsNotNull() {
            addCriterion("guiGe is not null");
            return (Criteria) this;
        }

        public Criteria andGuigeEqualTo(Integer value) {
            addCriterion("guiGe =", value, "guige");
            return (Criteria) this;
        }

        public Criteria andGuigeNotEqualTo(Integer value) {
            addCriterion("guiGe <>", value, "guige");
            return (Criteria) this;
        }

        public Criteria andGuigeGreaterThan(Integer value) {
            addCriterion("guiGe >", value, "guige");
            return (Criteria) this;
        }

        public Criteria andGuigeGreaterThanOrEqualTo(Integer value) {
            addCriterion("guiGe >=", value, "guige");
            return (Criteria) this;
        }

        public Criteria andGuigeLessThan(Integer value) {
            addCriterion("guiGe <", value, "guige");
            return (Criteria) this;
        }

        public Criteria andGuigeLessThanOrEqualTo(Integer value) {
            addCriterion("guiGe <=", value, "guige");
            return (Criteria) this;
        }

        public Criteria andGuigeIn(List<Integer> values) {
            addCriterion("guiGe in", values, "guige");
            return (Criteria) this;
        }

        public Criteria andGuigeNotIn(List<Integer> values) {
            addCriterion("guiGe not in", values, "guige");
            return (Criteria) this;
        }

        public Criteria andGuigeBetween(Integer value1, Integer value2) {
            addCriterion("guiGe between", value1, value2, "guige");
            return (Criteria) this;
        }

        public Criteria andGuigeNotBetween(Integer value1, Integer value2) {
            addCriterion("guiGe not between", value1, value2, "guige");
            return (Criteria) this;
        }

        public Criteria andDanweiIsNull() {
            addCriterion("danWei is null");
            return (Criteria) this;
        }

        public Criteria andDanweiIsNotNull() {
            addCriterion("danWei is not null");
            return (Criteria) this;
        }

        public Criteria andDanweiEqualTo(String value) {
            addCriterion("danWei =", value, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiNotEqualTo(String value) {
            addCriterion("danWei <>", value, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiGreaterThan(String value) {
            addCriterion("danWei >", value, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiGreaterThanOrEqualTo(String value) {
            addCriterion("danWei >=", value, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiLessThan(String value) {
            addCriterion("danWei <", value, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiLessThanOrEqualTo(String value) {
            addCriterion("danWei <=", value, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiLike(String value) {
            addCriterion("danWei like", value, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiNotLike(String value) {
            addCriterion("danWei not like", value, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiIn(List<String> values) {
            addCriterion("danWei in", values, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiNotIn(List<String> values) {
            addCriterion("danWei not in", values, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiBetween(String value1, String value2) {
            addCriterion("danWei between", value1, value2, "danwei");
            return (Criteria) this;
        }

        public Criteria andDanweiNotBetween(String value1, String value2) {
            addCriterion("danWei not between", value1, value2, "danwei");
            return (Criteria) this;
        }

        public Criteria andLeibieIsNull() {
            addCriterion("leiBie is null");
            return (Criteria) this;
        }

        public Criteria andLeibieIsNotNull() {
            addCriterion("leiBie is not null");
            return (Criteria) this;
        }

        public Criteria andLeibieEqualTo(String value) {
            addCriterion("leiBie =", value, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieNotEqualTo(String value) {
            addCriterion("leiBie <>", value, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieGreaterThan(String value) {
            addCriterion("leiBie >", value, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieGreaterThanOrEqualTo(String value) {
            addCriterion("leiBie >=", value, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieLessThan(String value) {
            addCriterion("leiBie <", value, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieLessThanOrEqualTo(String value) {
            addCriterion("leiBie <=", value, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieLike(String value) {
            addCriterion("leiBie like", value, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieNotLike(String value) {
            addCriterion("leiBie not like", value, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieIn(List<String> values) {
            addCriterion("leiBie in", values, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieNotIn(List<String> values) {
            addCriterion("leiBie not in", values, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieBetween(String value1, String value2) {
            addCriterion("leiBie between", value1, value2, "leibie");
            return (Criteria) this;
        }

        public Criteria andLeibieNotBetween(String value1, String value2) {
            addCriterion("leiBie not between", value1, value2, "leibie");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiIsNull() {
            addCriterion("zhuangTai is null");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiIsNotNull() {
            addCriterion("zhuangTai is not null");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiEqualTo(Integer value) {
            addCriterion("zhuangTai =", value, "zhuangtai");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiNotEqualTo(Integer value) {
            addCriterion("zhuangTai <>", value, "zhuangtai");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiGreaterThan(Integer value) {
            addCriterion("zhuangTai >", value, "zhuangtai");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiGreaterThanOrEqualTo(Integer value) {
            addCriterion("zhuangTai >=", value, "zhuangtai");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiLessThan(Integer value) {
            addCriterion("zhuangTai <", value, "zhuangtai");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiLessThanOrEqualTo(Integer value) {
            addCriterion("zhuangTai <=", value, "zhuangtai");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiIn(List<Integer> values) {
            addCriterion("zhuangTai in", values, "zhuangtai");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiNotIn(List<Integer> values) {
            addCriterion("zhuangTai not in", values, "zhuangtai");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiBetween(Integer value1, Integer value2) {
            addCriterion("zhuangTai between", value1, value2, "zhuangtai");
            return (Criteria) this;
        }

        public Criteria andZhuangtaiNotBetween(Integer value1, Integer value2) {
            addCriterion("zhuangTai not between", value1, value2, "zhuangtai");
            return (Criteria) this;
        }

        public Criteria andGongyingshangIsNull() {
            addCriterion("gongYingShang is null");
            return (Criteria) this;
        }

        public Criteria andGongyingshangIsNotNull() {
            addCriterion("gongYingShang is not null");
            return (Criteria) this;
        }

        public Criteria andGongyingshangEqualTo(String value) {
            addCriterion("gongYingShang =", value, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangNotEqualTo(String value) {
            addCriterion("gongYingShang <>", value, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangGreaterThan(String value) {
            addCriterion("gongYingShang >", value, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangGreaterThanOrEqualTo(String value) {
            addCriterion("gongYingShang >=", value, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangLessThan(String value) {
            addCriterion("gongYingShang <", value, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangLessThanOrEqualTo(String value) {
            addCriterion("gongYingShang <=", value, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangLike(String value) {
            addCriterion("gongYingShang like", value, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangNotLike(String value) {
            addCriterion("gongYingShang not like", value, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangIn(List<String> values) {
            addCriterion("gongYingShang in", values, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangNotIn(List<String> values) {
            addCriterion("gongYingShang not in", values, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangBetween(String value1, String value2) {
            addCriterion("gongYingShang between", value1, value2, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andGongyingshangNotBetween(String value1, String value2) {
            addCriterion("gongYingShang not between", value1, value2, "gongyingshang");
            return (Criteria) this;
        }

        public Criteria andJinjiaIsNull() {
            addCriterion("jinJia is null");
            return (Criteria) this;
        }

        public Criteria andJinjiaIsNotNull() {
            addCriterion("jinJia is not null");
            return (Criteria) this;
        }

        public Criteria andJinjiaEqualTo(Double value) {
            addCriterion("jinJia =", value, "jinjia");
            return (Criteria) this;
        }

        public Criteria andJinjiaNotEqualTo(Double value) {
            addCriterion("jinJia <>", value, "jinjia");
            return (Criteria) this;
        }

        public Criteria andJinjiaGreaterThan(Double value) {
            addCriterion("jinJia >", value, "jinjia");
            return (Criteria) this;
        }

        public Criteria andJinjiaGreaterThanOrEqualTo(Double value) {
            addCriterion("jinJia >=", value, "jinjia");
            return (Criteria) this;
        }

        public Criteria andJinjiaLessThan(Double value) {
            addCriterion("jinJia <", value, "jinjia");
            return (Criteria) this;
        }

        public Criteria andJinjiaLessThanOrEqualTo(Double value) {
            addCriterion("jinJia <=", value, "jinjia");
            return (Criteria) this;
        }

        public Criteria andJinjiaIn(List<Double> values) {
            addCriterion("jinJia in", values, "jinjia");
            return (Criteria) this;
        }

        public Criteria andJinjiaNotIn(List<Double> values) {
            addCriterion("jinJia not in", values, "jinjia");
            return (Criteria) this;
        }

        public Criteria andJinjiaBetween(Double value1, Double value2) {
            addCriterion("jinJia between", value1, value2, "jinjia");
            return (Criteria) this;
        }

        public Criteria andJinjiaNotBetween(Double value1, Double value2) {
            addCriterion("jinJia not between", value1, value2, "jinjia");
            return (Criteria) this;
        }

        public Criteria andYnumberIsNull() {
            addCriterion("yNumber is null");
            return (Criteria) this;
        }

        public Criteria andYnumberIsNotNull() {
            addCriterion("yNumber is not null");
            return (Criteria) this;
        }

        public Criteria andYnumberEqualTo(Integer value) {
            addCriterion("yNumber =", value, "ynumber");
            return (Criteria) this;
        }

        public Criteria andYnumberNotEqualTo(Integer value) {
            addCriterion("yNumber <>", value, "ynumber");
            return (Criteria) this;
        }

        public Criteria andYnumberGreaterThan(Integer value) {
            addCriterion("yNumber >", value, "ynumber");
            return (Criteria) this;
        }

        public Criteria andYnumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("yNumber >=", value, "ynumber");
            return (Criteria) this;
        }

        public Criteria andYnumberLessThan(Integer value) {
            addCriterion("yNumber <", value, "ynumber");
            return (Criteria) this;
        }

        public Criteria andYnumberLessThanOrEqualTo(Integer value) {
            addCriterion("yNumber <=", value, "ynumber");
            return (Criteria) this;
        }

        public Criteria andYnumberIn(List<Integer> values) {
            addCriterion("yNumber in", values, "ynumber");
            return (Criteria) this;
        }

        public Criteria andYnumberNotIn(List<Integer> values) {
            addCriterion("yNumber not in", values, "ynumber");
            return (Criteria) this;
        }

        public Criteria andYnumberBetween(Integer value1, Integer value2) {
            addCriterion("yNumber between", value1, value2, "ynumber");
            return (Criteria) this;
        }

        public Criteria andYnumberNotBetween(Integer value1, Integer value2) {
            addCriterion("yNumber not between", value1, value2, "ynumber");
            return (Criteria) this;
        }

        public Criteria andYdateIsNull() {
            addCriterion("yDate is null");
            return (Criteria) this;
        }

        public Criteria andYdateIsNotNull() {
            addCriterion("yDate is not null");
            return (Criteria) this;
        }

        public Criteria andYdateEqualTo(Date value) {
            addCriterionForJDBCDate("yDate =", value, "ydate");
            return (Criteria) this;
        }

        public Criteria andYdateNotEqualTo(Date value) {
            addCriterionForJDBCDate("yDate <>", value, "ydate");
            return (Criteria) this;
        }

        public Criteria andYdateGreaterThan(Date value) {
            addCriterionForJDBCDate("yDate >", value, "ydate");
            return (Criteria) this;
        }

        public Criteria andYdateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("yDate >=", value, "ydate");
            return (Criteria) this;
        }

        public Criteria andYdateLessThan(Date value) {
            addCriterionForJDBCDate("yDate <", value, "ydate");
            return (Criteria) this;
        }

        public Criteria andYdateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("yDate <=", value, "ydate");
            return (Criteria) this;
        }

        public Criteria andYdateIn(List<Date> values) {
            addCriterionForJDBCDate("yDate in", values, "ydate");
            return (Criteria) this;
        }

        public Criteria andYdateNotIn(List<Date> values) {
            addCriterionForJDBCDate("yDate not in", values, "ydate");
            return (Criteria) this;
        }

        public Criteria andYdateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("yDate between", value1, value2, "ydate");
            return (Criteria) this;
        }

        public Criteria andYdateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("yDate not between", value1, value2, "ydate");
            return (Criteria) this;
        }

        public Criteria andYvalIsNull() {
            addCriterion("yVal is null");
            return (Criteria) this;
        }

        public Criteria andYvalIsNotNull() {
            addCriterion("yVal is not null");
            return (Criteria) this;
        }

        public Criteria andYvalEqualTo(Date value) {
            addCriterionForJDBCDate("yVal =", value, "yval");
            return (Criteria) this;
        }

        public Criteria andYvalNotEqualTo(Date value) {
            addCriterionForJDBCDate("yVal <>", value, "yval");
            return (Criteria) this;
        }

        public Criteria andYvalGreaterThan(Date value) {
            addCriterionForJDBCDate("yVal >", value, "yval");
            return (Criteria) this;
        }

        public Criteria andYvalGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("yVal >=", value, "yval");
            return (Criteria) this;
        }

        public Criteria andYvalLessThan(Date value) {
            addCriterionForJDBCDate("yVal <", value, "yval");
            return (Criteria) this;
        }

        public Criteria andYvalLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("yVal <=", value, "yval");
            return (Criteria) this;
        }

        public Criteria andYvalIn(List<Date> values) {
            addCriterionForJDBCDate("yVal in", values, "yval");
            return (Criteria) this;
        }

        public Criteria andYvalNotIn(List<Date> values) {
            addCriterionForJDBCDate("yVal not in", values, "yval");
            return (Criteria) this;
        }

        public Criteria andYvalBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("yVal between", value1, value2, "yval");
            return (Criteria) this;
        }

        public Criteria andYvalNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("yVal not between", value1, value2, "yval");
            return (Criteria) this;
        }

        public Criteria andYscqyIsNull() {
            addCriterion("yScqy is null");
            return (Criteria) this;
        }

        public Criteria andYscqyIsNotNull() {
            addCriterion("yScqy is not null");
            return (Criteria) this;
        }

        public Criteria andYscqyEqualTo(String value) {
            addCriterion("yScqy =", value, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyNotEqualTo(String value) {
            addCriterion("yScqy <>", value, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyGreaterThan(String value) {
            addCriterion("yScqy >", value, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyGreaterThanOrEqualTo(String value) {
            addCriterion("yScqy >=", value, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyLessThan(String value) {
            addCriterion("yScqy <", value, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyLessThanOrEqualTo(String value) {
            addCriterion("yScqy <=", value, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyLike(String value) {
            addCriterion("yScqy like", value, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyNotLike(String value) {
            addCriterion("yScqy not like", value, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyIn(List<String> values) {
            addCriterion("yScqy in", values, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyNotIn(List<String> values) {
            addCriterion("yScqy not in", values, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyBetween(String value1, String value2) {
            addCriterion("yScqy between", value1, value2, "yscqy");
            return (Criteria) this;
        }

        public Criteria andYscqyNotBetween(String value1, String value2) {
            addCriterion("yScqy not between", value1, value2, "yscqy");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}